import axios from 'axios'
axios.defaults.baseURL = '';
axios.defaults.headers.post['Content-Type'] = 'application/json';
import {Message} from 'element-ui'

// 添加请求拦截器
axios.interceptors.request.use(function (config) {
    // 在发送请求之前做些什么
    return config;
  }, function (error) {
    // 对请求错误做些什么
    return Promise.reject(error);
  });

// 添加响应拦截器
axios.interceptors.response.use(function (response) {
    // 对响应数据做点什么
    
    let status = response.status
    if(status == 200 || status == 201 || status == 202){
        // Message.success({message:$t('httpStatus.404')})
         return response;   
    }

    return Promise.reject(response)
    
  }, function (err) {
    // 对响应错误做点什么
    if (err.response.status == 500){
      Message.error({message: '服务器内部错误' });
    }
    else if (err.response.status == 404) {
      Message.error({message: '资源未找到'});
    }else if(err.response.status == 400){
      switch(err.response.data.code){
        case 400001: Message.error({message: '参数名缺失'});break;
        case 400002: Message.error({message: 'IP配置缺失'});break;
        case 400003: Message.error({message: '名称已经存在'});break;
        case 400004: Message.error({message: '参数ID缺失'});break;
        case 400005: Message.error({message: '未找到配置'});break;
        case 400006: Message.error({message: '配置已经映射到imei上'});break;
        case 400007: Message.error({message: '上传文件限制超过'});break;
        case 400008: Message.error({message: '配置已存在'});break;
        case 600001: Message.error({message: 'IP配置名已存在'});break;
        case 600002: Message.error({message: `ip地址和端口已经被名为${err.response.data.name}的配置所使用`});break;
        case 700001: Message.error({message: 'IP配置已被使用'});break;
        case 800001: Message.error({message: 'IP配置已被使用'});break;
        case 800002: Message.error({message: 'imei 不存在'});break;
        case 800003: Message.error({message: '跟踪数已达上限，请稍后在试'});break;
      }
    }
    return Promise.reject(err.response);
  });

  export default axios;